/*Author Santosh Gajul 
 * 
 * The constructors are called in the order of derivation from the super class to the sub class
 * Since the super statement must be executed first in the sub class constructor, the order 
 * should be the same even the super is not present. If the super is not present, the 
 * default or the parameterless constructors of each super class must be executed.
 */
class A{
	A(){
		System.out.println("Inside A's Constructor");
	}
}
class B extends A{
	B(){
		System.out.println("Inside B's Constructor");
	}
}
class C extends B{
	C(){
		System.out.println("Inside C's Constructor");
	}
}
public class WhenConstructorsAreCalled {
	public static void main(String[] args){
		C c = new C();
	}
}
